This avoids the helper process exiting with an error due to a broken
pipe.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1349>
<node>
<interface name="org.gnome.Shell.PerfHelper">
+ <method name="Exit"/>
<method name="CreateWindow">
<arg type="i" direction="in"/>
<arg type="i" direction="in"/>
log(`Script failed: ${err}\n${err.stack}`);
Meta.exit(Meta.ExitCode.ERROR);
}
+
+ try {
+ const perfHelper = _getPerfHelper();
+ perfHelper.ExitSync();
+ } catch (err) {
+ log(`Failed to exit helper: ${err}\n${err.stack}`);
+ Meta.exit(Meta.ExitCode.ERROR);
+ }
+
Meta.exit(Meta.ExitCode.SUCCESS);
}